package com.naiterui.ehp.bs.emr.vo;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

import org.apache.commons.lang3.builder.ToStringBuilder;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonInclude.Include;
import com.naiterui.ehp.bp.utils.date.DateUtil;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

@ApiModel(value = "OldRecordVO", description = "原诊疗记录")
public class OldRecordVO implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "原诊疗记录描述")
    @JsonInclude(Include.NON_NULL)
    private String record;// 原诊疗记录描述

    @ApiModelProperty(value = "原诊疗记录图片")
    @JsonInclude(Include.NON_NULL)
    private List<String> imgList;// 诊疗记录图片

    @ApiModelProperty(value = "原基本病情")
    @JsonInclude(Include.NON_NULL)
    private OldDoctorDesVO doctorDesVO;

    /**
     * 病历作废 0：正常 1：作废
     */
    @ApiModelProperty(value = "病历作废状态 0：正常 1：作废")
    private Integer invalid;

    /**
     * 病历作废时间
     */
    @ApiModelProperty(value = "病历作废时间")
    @JsonFormat(pattern = DateUtil.DATE_TIME)
    private Date invalidTime;

    public OldRecordVO() {

    }

    public OldRecordVO(String record, List<String> imgList, OldDoctorDesVO doctorDesVO) {
        this.record = record;
        this.imgList = imgList;
        this.doctorDesVO = doctorDesVO;
    }

    public String getRecord() {
        return this.record;
    }

    public void setRecord(String record) {
        this.record = record;
    }

    public List<String> getImgList() {
        return this.imgList;
    }

    public void setImgList(List<String> imgList) {
        this.imgList = imgList;
    }

    public OldDoctorDesVO getDoctorDesVO() {
        return this.doctorDesVO;
    }

    public void setDoctorDesVO(OldDoctorDesVO doctorDesVO) {
        this.doctorDesVO = doctorDesVO;
    }

    public Integer getInvalid() {
        return this.invalid;
    }

    public void setInvalid(Integer invalid) {
        this.invalid = invalid;
    }

    public Date getInvalidTime() {
        return this.invalidTime;
    }

    public void setInvalidTime(Date invalidTime) {
        this.invalidTime = invalidTime;
    }

    @Override
    public String toString() {
        return ToStringBuilder.reflectionToString(this);
    }
}
